#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

int main()
{
    cout << setprecision(6) << fixed;

    double a, b, c;
    cin >> a >> b >> c;
    bool is_triangle = false;
    if (a + b > c && a + c > b && b + c > a)
    {
        is_triangle = true;
    }
    double max_side = 0;
    if (a >= b && a >= c)
    {
        max_side = a;
    }
    else if (b >= a && b >= c)
    {
        max_side = b;
    }
    else
    {
        max_side = c;
    }

    if (is_triangle)
    {
        double p = (a + b + c) / 2;
        double area = sqrt(p * (p - a) * (p - b) * (p - c));
        // 输出最长边对应的高的长度
        double height = area * 2 / max_side;
        cout << height << endl;
    }
    else
    {
        cout << "NO" << endl;
    }
    return 0;
}
